메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

IT/모바일

드루팔(Drupal) 6.0: 설치와 기본 사용법(1)

한빛미디어

|

2008-04-28

|

by HANBIT

16,705

제공 : 한빛 네트워크
저자 : Michael J. Ross
역자 : 조성재
원문 : Drupal 6.0: Installation and Basic Usage

모든 규모의 단체들은 시간과 돈을 최소한으로 지출하면서 전문적이고 잘 꾸며진 웹 사이트를 만들어야 하는 도전을 직면할 때가 있습니다. 각 단체들은 자신들의 사이트가 갖는 유일한 기능 모음을 갖을 때가 있지만, 필수적인 기능들은 어느 단체든 사용합니다. 이런 기능들은 사이트 상의 사용자가 자신들의 컨텐츠를 출판하는 능력도 포함합니다. 기존 기업적 사이트에서의 문제는 단체의 IT 팀에서 단체 내의 여러가지 컨텐츠를 추가하거나, 변경하면서 웹 개발에 많은 병목현상을 겪게 되는 것입니다. 이러한 문제를 피하기 위해서 사용자의 컨텐츠를 직접 출판할 수 있는 기능을 포함합니다.

서버 웹 프로그래밍 환경에서 소스부터 작성하여 만든 웹 사이트는 사용자 컨텐츠와 다른 요구들을 지원할 수 있는 최적화 된 솔루션을 제공할 수 있습니다. 그러나 그러한 프로젝트들은 전반적으로 작성한 기능 이상으로 강력하지 않으며, 생각했던 것보다 보안에 취약하고, 예상한 것보다 더 많은 시간과 비용을 필요로 하는 경우가 많습니다. 심지어 몇 개월에서 몇 년씩이나 디버깅에 시간을 할애하게 될지도 모릅니다.

CMS의 개요와 드루팔 소개

이런 수요에 대한 대응으로 독립적인 개발자들과 소프트웨어 회사들은 정보관리시스템(Contens Management System, 이하 CMS)을 개발하였습니다. CMS는 사이트의 내용을 뺀 통합적인 웹 사이트의 프레임워크라고 생각할 수 있습니다. 즉, CMS는 비어있는 사이트와 같습니다. 이를테면 사이트의 관리자들에게 기본적인 기능이라 할 수 있는 모든 것들과, 블로그 포스팅, 이미지 관리 등의 방문자들이 채울 수 있는 컨텐츠 형태들 가지고 있습니다. 사이트의 기본은 대부분 컨텐츠를 저장하기 위한 데이터베이스, 사용자 로그인과 인증 기능, 웹 피드, 이벤트에 대한 달력등을 포함합니다. 이런 CMS의 가장 큰 잇점은 기본 부분을 관리자가 개발을 할 필요가 없다는 것입니다. 반면 각각의 개성에 중점을 투어 사이트가 단체의 분위기와 컨텐츠 운영 정책에 맞게 사이트를 조작할 수 있습니다.

좋은 CMS의 잇점은 무척 실질적입니다. 미리 말씀드렸지만, IT 부서는 바퀴를 다시 재발명할 필요 없이, 재빠르게 새 웹 사이트로 전환할 수 있습니다. 사용자들도 HTML코드에 대해 모르더라도 WYSIWYG("What You See Is What You Get") 편집기를 이용하여 웹 컨텐츠를 추가할 수 있습니다. 컨텐츠에 접근을 금지시키는 것도 여러 단계의 사용자 등급을 사용하여 가능합니다. 사용자 관리와 보안 기능은 관리자, 보안전문가, 그리고 해커에 의해 정밀한 검사를 여러해 동안 받아왔습니다. 데이터베이스 디자인과 최적화 관련 문제는 손으로 직접 최신의 구조를 고안하거나 집에 가져가서 작업하는 것보다, 더 많은 지식과 경험을 갖춘 전문가가 이미 다 풀어두었습니다. 전체 사이트의 모양은 다른 모양의 (흔히 말하는)테마를 선택하는 것으로 바로 변경할 수 있으며, 모든 주요 CMS 도구들은 서드파티 테마들을 추가하는 기능으로 내장된 테마 도구를 가지고 있습니다. 이러한 기능들은 새로운 사이트에 대해 CMS를 편리하게 만드는 데에 많은 잇점이 있습니다.

하지만, 초기 대부분의 CMS들은 유료였고, 몇몇 프로그램들은 비교할 수 없을만큼 비쌌습니다. 운 좋게도 현재 가장 유행하는 오픈소스 CMS들은 상용 프로그램의 기능 전부는 아니지만, 대부분의 기능들을 제공합니다. 게다가 자신이 만든 템플릿과 온라인 상점과 같은 전자상거래 기능을 포함하여 각 CMS에 대한 새로운 기능들을 추가하고 만드는 열광적인 개발자들의 커뮤니티가 자라면서 엄청난 지원을 받고 있습니다.

드루팔은 가장 인기있는 CMS들 중의 하나이며, 점점 더 많은 인정을 받고 있는데, 그 이유는 앞에서 말한 모든 요소들을 아우르고 있다는 점과, PHP에 길들여진 개발자들이 드루팔의 기능과 모양을 세밀하게 조정하는데 익숙하기 때문입니다. 최신 버전인 6 버전으로 드루팔은 프로젝트 개발 역사상 그리고 웹 제작자들에게 제공하는 기능상으로도 기념비적인 기반을 완성하였습니다. 가장 최신 버전은 설치, 관리, 사용자 언어 지원, 테마 관리, 보안, 성능, 그리도 더 많은 영역에 따른 광범위한 개선점과 새로 개발된 요소들을 제공하고 있습니다.

이 글에선 소스를 가지고 새로운 드루팔 웹 사이트를 어떻게 설치하고 설정하는지 다룰 것입니다. 또한 새로 설치한 드루팔에 기본적인 내용 추가 방법을 보여드릴 것입니다.

시스템 요구사항

드루팔을 여러분의 컴퓨터에 설치하고 실행하기 위해서는 웹 서버, 데이터베이스 서버, 웹 스크립트 언어인 PHP 와 같은 요소들을 필요로 합니다. 이 세가지 요소가 설치되어 있어야 하며, 드루팔을 설치하기 전에 확인되어야 합니다.

드루팔은 동적으로 웹 페이지들을 생성하기 때문에, 웹 페이지를 생성하기 위해서는 웹 서버가 필요합니다. 마이크로소프트사의 IIS(버전 5, 혹은 더 지원이 잘 되는 버전 6)에서도 드루팔은 동작하지만, 웹 서버로서 아파치 1.3이나 그 이후의 버전을 선택합니다. 드루팔은 사용자가 올린 글과 관련된 내용을 관계형 데이터베이스에 저장할 필요가 있습니다. 드루팔이 PostgreSQL(버전 7.4나 그 이후의 버전)에서도 동작하지만, 데이터베이스 서버로서 MySQL(버전 4.1이나 그 후의 버전)을 선택합니다. 버전 5.0을 강력히 추천합니다. 앞서 말하였지만, 드루팔은 PHP로 작성하였으며, 버전 4.3.5 나 그 이후의 버전이 필요합니다. 5.2 버전이 적절합니다.

이 글에서 우리는 이 요소들의 가장 최신 버전을 사용할 것입니다. 이 글을 쓸 때에는 아파치 2.2.8, MySQL 5.0, 그리고 PHP 5.2.5 버전이 가장 최신 버전이었으며, 모두 Windows XP 환경에서 설치하였습니다. 관련된 설치 진행 과정은 다른 버전의 윈도우즈와 같으며, 리눅스를 포함하여 드루팔이 지원하는 다른 OS도 비슷합니다. 버전을 확실하게 구분할 수 없는 아파치, MySQL, PHP의 이전 버전도 설치과정은 동일합니다.

아파치, MySQL, PHP를 설치하고 설정하는 방법은 인터넷에서 찾을 수 있는 개발자 튜토리얼과 같이 각 프로젝트의 메뉴얼을 참조하시면 됩니다. 드루팔이 필수적으로 요구하고 추천하는 PHP 설정에 대한 더 많은 정보는 드루팔 시스템 요구사항 페이지에서 찾으실 수 있습니다. 드루팔은 최소 16메가바이트의 시스템 메모리를 필요로 하지만, 여러분이 기획하는 드루팔 플랫폼에 따라 더 많은 메모리 용량을 필요로 합니다.

드루팔 다운로드

드루팔 설치의 첫번째 단계는 가장 최신 버전인 드루팔을 다운로드 받는 것입니다. (역자 주:번역할 당시에는 보안 관련 문제가 해결된 6.2가 최신 버전이었습니다.) "Download Drupal 6.2" 링크를 클릭하시고, 압축 파일 drupal-6.2.tar.gz을 여러분의 컴퓨터 어딘가에 저장하십시오. 광대역폭 인터넷에 연결되어 있다면, 단 2초 안에 다운로드를 완료할 것입니다. 왜냐하면 드루팔 설치 파일은 1메가바이트가 조금 넘기 때문입니다. 다른 인기있는 CMS들의 설치 파일에 비하면 엄청나게 작습니다.


[그림 1] 드루팔 6.0 다운로드 페이지

드루팔의 이전 안정 버전은 5.7 이지만, 추천하지는 않습니다.

드루팔 설치

여러분의 컴퓨터에 저장한 설치 파일을 열어보십시오. 의심할 필요도 없이 Gzip 파일과 연결된 압축 프로그램으로 열릴 것입니다. (만약 그런 프로그램이 없다면 7-zip을 포함하여 훌륭한 여러 프로그램들이 있으니 그 중 하나를 사용하십시오.)


[그림 2] 설치 파일 내용

새 드루팔을 설치할 디렉터리인 여러분의 웹 서버 루트 디렉터리에 압축 파일의 내용을 풀어두십시오. 내용은 57개의 디렉터리에 465개의 파일로 구성되어 있습니다. 어떻게 보면 CMS로서는 무척 많은 양의 파일이라 어색할지 모르지만 실제로는 종래의 다른 CMS 프로그램의 설치 파일을 여러개의 조각으로 나누어 놓은 것입니다. 드루팔은 다른 프로그램들과 비교해 봤을 때 그 사용량이 3,295 킬로바이트 밖에 차지하지 않을 정도로 무척 작습니다.

드루팔 설치 스크립트를 실행하기 전에, 여러분의 MySQL 서버에 데이터베이스를 생성하십시오. 데이터베이스를 생성하는 동작은 MySQL 데이터베이스 관리 도구를 사용하면 완료할 수 있습니다. 그래픽 환경의 프로그램으로는 phpMyAdmin과 같은 프로그램이 있으며, MySQL에 내장한 명령행 상의 모니터 프로그램을 이용할 수 있습니다. 이 글에서는 내장한 모니터 프로그램을 이용하도록 하겠습니다.
mysql --password --user=root
MySQL 서버의 비밀번호를 입력한 후, 여러분은 환영 메시지와 함께 명령어 프롬프트를 보실 수 있습니다.
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 4
Server version: 5.0.51a-community-nt MySQL Community Edition (GPL)
Type "help;" or "h" for help. Type "c" to clear the buffer.
mysql>
프롬프트에서 데이터 베이스(예를 들어, 가상의 이름 "drupal_db")를 만드는 명령행을 입력하시고 사용자("drupal_user")에게 비밀번호와 데이터베이스 상의 모든 권한을 할당하는 명령어를 입력하십시오.
CREATE DATABASE drupal_db;
GRANT ALL ON drupal_db.* TO drupal_user@localhost IDENTIFIED BY "password";
(이 예제에서 보안에 취약한 비밀번호를 사용하는 것은 설명을 위한 목적으로 사용한 것이지, 실제로 인터넷 상에서 드루팔을 설치할 때에는 절대 사용하시지 마십시오.)

여러분의 웹 브라우저에서 드루팔 홈페이지의 index.php 로 이동하십시오. 예를 들어, 만약 여러분이 드루팔 루트 디렉터리로 D: 드라이브 상의 /_w/Drupal 을 선택하였고, 아파치 설정 파일에서 D: 드라이브를 /m_d/ 디렉터리에 연결하였다면, 여러분의 드루팔 URL은 http://localhost/m_d/_w/Drupal/ 이 될 것입니다. index.php 페이지는 드루팔이 설치되지 않았다는 것을 감지하고, 자동적으로 아래의 그림에서 볼 수 있는 http://localhost/m_d/_w/Drupal/install.php?profile=default 설치 페이지로 이동할 것입니다.


[그림 3] 언어 선택

이 드루팔 설치 과정에서 우리는 영어를 선택할 것이며, 드루팔 설치 스크립트는 데이터베이스 설정 옵션 부분을 보여줄 것입니다.


[그림 4] 데이터베이스 설정

이전 그림에서 왼쪽의 체크된 항목을 보면, 여러분이 처음부터 실행했던 단계인 언어 선택부터 세번째 단계인 데이터베이스 설치까지 체크가 되어 있습니다. 아마 드루팔은 MySQL 서버가 동작중이며, 드루팔 6.0을 사용할 수 있는 호환 버전임을 확인할 것입니다.

여러분이 만든 데이터베이스 이름과 사용자 이름, 비밀번호를 입력하십시오. 데이터베이스 서버이름을 기본 설정("localhost")에서 다른 서버로 변경하거나 다른 포트번호, 테이블 이름 앞에 붙는 접두어를 변경하기 원하신다면 "Advanced Options" 링크를 클릭하십시오. 어떤 이유에서든 가장 마지막 옵션이 값으로서 적용됩니다. 만약 여러분이 드루팔 테이블을 다른 응용프로그램의 데이터베이스 테이블들과 공유하기 원하거나 정렬 혹은 그보다 더 심각한 이유에서 드루팔이 생성할 이름의 테이블을 이미 다른 프로그램에서 사용하고 있다 하더라도 말입니다.


[그림 5] 파일 설치 진행

모든 단계가 잘 진행되었다면, 드루팔 파일의 설치가 완료될 때까지 진행될 것입니다. 그림 5와 6은 여러분의 컴퓨터 성능에 따라 다르겠지만, 잠깐 동안만 볼 수 있는 화면입니다.


[그림 6] 파일 설치 완료

파일 설치가 완료되었을 때, 사이트 초기 설정을 할 준비가 완료됩니다.


역자 조성재님은 현재 오픈소스 데스크탑 환경인 Kool Desktop Environment (KDE) 프로젝트의 한국어 번역 코디네이터와 한국팀의 대표로 활동하고 있습니다.
TAG :
댓글 입력
자료실

최근 본 책0